/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package investigaciones_itm.Administracion;

import com.sun.rave.web.ui.appbase.AbstractPageBean;
import com.sun.webui.jsf.component.StaticText;
import com.sun.webui.jsf.component.TextField;
import itm.exception.IndicadoresException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.FacesException;
import investigaciones_itm.ApplicationBean1;
import investigaciones_itm.SessionBean1;
import investigaciones_itm.RequestBean1;
import itm.bo.administracion.IndicadoresBO;
import itm.vo.administracion.EtiquetaVO;
import java.util.ArrayList;
import java.util.List;
import javax.faces.component.html.HtmlSelectOneRadio;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

/**
 * <p>Page bean that corresponds to a similarly named JSP page.  This
 * class contains component definitions (and initialization code) for
 * all components that you have defined on this page, as well as
 * lifecycle methods and event handlers where you may add behavior
 * to respond to incoming events.</p>
 *
 * @version EtiquetasCalidad.java
 * @version Created on 29/07/2009, 11:32:24 AM
 * @author jimmy
 */
public class EtiquetasCalidad extends AbstractPageBean {
    // <editor-fold defaultstate="collapsed" desc="Managed Component Definition">

    /**
     * <p>Automatically managed component initialization.  <strong>WARNING:</strong>
     * This method is automatically generated, so any user-specified code inserted
     * here is subject to being replaced.</p>
     */
    private void _init() throws Exception {
    }

    // </editor-fold>
    private TextField inputNombreEtiqueta;
    private TextField inputPorcentajeEtiqueta;
    private TextField inputNombreEtiquetaModifica;
    private TextField inputPorcentajeEtiquetaModifica;
    private StaticText textIdEtiqueta;
    private StaticText textNombreEtiqueta;
    private StaticText textPorcentajeEtiqueta;
    private StaticText textTipoEtiqueta;
    private HtmlSelectOneRadio radioEtiqueta;
    private HtmlSelectOneRadio radioEtiquetaModifica;
    private IndicadoresBO indicadorBO;
    private List<EtiquetaVO> listaEtiquetas = new ArrayList<EtiquetaVO>();
    private boolean boolModifica;
    private boolean boolAdicionar;
    private HttpSession session;
    private static final String ID_SESSION_ETIQUETAS_CALIDAD = "etiquetas.calidad";
    private double porcentaje;

    public boolean boolbotonCrear = false;

    public boolean boolPorcentaje = false;

    public boolean boolFrameCrear = false;


    /**
     * <p>Construct a new Page bean instance.</p>
     */
    public EtiquetasCalidad() {
        inicializar();
    }

    protected void inicializar() {
        inicializarObjetos();
        cargarEtiquetas();
        cargarVariablesSessionLocal();
    }

    protected void inicializarObjetos() {
        indicadorBO = new IndicadoresBO();
    }

    protected void cargarVariablesSessionLocal() {
        if (this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica") != null) {
            setBoolModifica((Boolean) this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica"));
        }
        if (this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolAdicionar") != null) {
            setBoolAdicionar((Boolean) this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolAdicionar"));
        }
        if (this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje") != null) {
            setPorcentaje((Double) this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje"));
        }
        if (this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "listaEtiquetas") != null) {
            setListaEtiquetas((List<EtiquetaVO>) this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "listaEtiquetas"));
        }
        setBoolFrameCrear(true);

    }

    protected void cargarEtiquetas() {
        try {
            listaEtiquetas = new ArrayList<EtiquetaVO>();
            listaEtiquetas = indicadorBO.listarEtiquetas();
        } catch (IndicadoresException ex) {
            Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
            error("Error al listar etiquetas");
        }
    }

    public void crearEtiqueta() {
        int nn = 0;
        try {
            int qq = 0;

            //INICIO CAMBIOS: OPERACIÓN DE CONFIRMACIÓN  DE SUMA DE PORCENTAJES
            porcentaje = 0;
            for (int i = 0; i < listaEtiquetas.size(); i++) {
                EtiquetaVO e = new EtiquetaVO();
                e = (EtiquetaVO)listaEtiquetas.get(i);
                String temp1 = e.getTipoEtiqueta();
                String temp2 = (String)radioEtiqueta.getValue().toString();

                if (temp1.equals(temp2) == true) {
                    porcentaje = porcentaje + listaEtiquetas.get(i).getPorcentaje();
                }
            }




            double s = porcentaje + (double)Double.parseDouble((String)inputPorcentajeEtiqueta.getText());

            this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje", getPorcentaje());

            textPorcentajeEtiqueta.setVisible(true);

            porcentaje = s;

            if(porcentaje <= 100.0)
            {
                //FIN CAMBIOS: OPERACIÓN DE CONFIRMACIÓN  DE SUMA DE PORCENTAJES
                if (radioEtiqueta.getValue() != null && inputNombreEtiqueta.getValue() != null && !inputNombreEtiqueta.getValue().toString().equals("")) {
                    int bb = 0;

                    indicadorBO.crearEtiqueta(radioEtiqueta.getValue().toString(), inputNombreEtiqueta.getValue().toString(), Double.parseDouble(inputPorcentajeEtiqueta.getValue().toString()));
                    //indicadorBO.crearEtiqueta(radioEtiqueta.getValue().toString(), inputNombreEtiqueta.getValue().toString());
                    cargarEtiquetas();

                    inputNombreEtiqueta.setText((String)"");
                    inputPorcentajeEtiqueta.setText((String)"");
                    radioEtiqueta.setValue((String)"");

                    this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "listaEtiquetas", listaEtiquetas);
                    info("La etiqueta se ingresó correctamente");
                    setBoolbotonCrear(false);
                } else {
                    error("Los campos marcados con (*) son obligatorios");
                    setBoolbotonCrear(true);
                }
                //INICIO: EN CASO DE QUE EXCEDA EL PORCENTAJE
            }else{
                error("La suma de los Porcentajes para el Tipo " + radioEtiqueta.getValue().toString() +" debe ser menor o igual a 100%");
                setBoolbotonCrear(true);
            }
            //FIN: EN CASO DE QUE EXCEDA EL PORCENTAJE
        } catch (IndicadoresException ex) {
            Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
            ex.printStackTrace();
            error("Error al crear la etiqueta");
        }

    }

    public void actionLinkModificar() {
        inputNombreEtiquetaModifica.setValue(textNombreEtiqueta.getValue().toString());
        radioEtiquetaModifica.setValue(textTipoEtiqueta.getValue().toString());
        inputPorcentajeEtiqueta.setValue(textPorcentajeEtiqueta.getValue().toString());
        setBoolModifica(true);
        setBoolFrameCrear(false);
        
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica", isBoolModifica());
        porcentaje = 0;
        for (int i = 0; i < listaEtiquetas.size(); i++) {
            if (listaEtiquetas.get(i).getTipoEtiqueta().equals(textTipoEtiqueta.getValue().toString())) {
                porcentaje = porcentaje + listaEtiquetas.get(i).getPorcentaje();
            }
        }
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje", getPorcentaje());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiqueta", getInputPorcentajeEtiqueta().getValue().toString());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textIdEtiqueta", getTextIdEtiqueta().getValue().toString());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textTipoEtiqueta", getTextTipoEtiqueta().getValue().toString());

    }

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    public void actionBotonAdicionar() {
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textTipoEtiqueta", ""); //Modificado
        //setBoolModifica(false);
        setBoolModifica(false);
        setBoolbotonCrear(true);
        setBoolFrameCrear(true);
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica", isBoolModifica());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiqueta", "0.0"); //Modificado
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiquetaModifica", "0.0"); //Modificado
    }

    public void actionBotonGuardar() {
        int qq1 = 0;
        String inicial = this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiqueta").toString();
        double valorAnt = Double.parseDouble(this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiqueta").toString());
        double valorNuevo = Double.parseDouble(inputPorcentajeEtiqueta.getValue().toString());
        if (radioEtiquetaModifica.getValue().toString().equals(this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textTipoEtiqueta").toString())) {
            double diferencia = valorNuevo - valorAnt;
            porcentaje = porcentaje + diferencia;
            if (porcentaje > 100) {
                error("La suma de los porcentajes no puede sobrepasar el 100%");
                inputPorcentajeEtiqueta.setValue(valorAnt);
                porcentaje = porcentaje - diferencia;
                //AJUSTES A LA APARIENCIA GRÁFICA
                setBoolModifica(true);
                setBoolbotonCrear(false);
                setBoolFrameCrear(false);
                this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica", isBoolModifica());

            } else {
                EtiquetaVO etiquetaVO = new EtiquetaVO();
                etiquetaVO.setIdEtiqueta(Long.parseLong(this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textIdEtiqueta").toString()));
                etiquetaVO.setNombreEtiqueta(inputNombreEtiquetaModifica.getValue().toString());
                etiquetaVO.setTipoEtiqueta(radioEtiquetaModifica.getValue().toString());
                etiquetaVO.setPorcentaje(Double.parseDouble(inputPorcentajeEtiqueta.getValue().toString()));
                try {
                    indicadorBO.modificarEtiqueta(etiquetaVO);
                    cargarEtiquetas();
                    porcentaje = 0;
                    for (int i = 0; i < listaEtiquetas.size(); i++) {
                        if (listaEtiquetas.get(i).getTipoEtiqueta().equals(radioEtiquetaModifica.getValue().toString())) {
                            porcentaje = porcentaje + listaEtiquetas.get(i).getPorcentaje();
                        }
                    }
                    this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje", getPorcentaje());
                    info("Actualización exitosa");
                    setBoolModifica(false);
                    setBoolbotonCrear(false);
                    setBoolFrameCrear(true);
                    this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica", isBoolModifica());
                } catch (IndicadoresException ex) {
                    Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
                    error("Error al guardar los datos");
                }
            }
        } else {
            radioEtiquetaModifica.setValue(this.getSession().getAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textTipoEtiqueta").toString());
            error("El tipo de la etiqueta no es modificable");
        }

    }

    public void actionLinkEliminar() {
        EtiquetaVO etiquetaVO = new EtiquetaVO();
        etiquetaVO.setIdEtiqueta(Long.parseLong(textIdEtiqueta.getValue().toString()));
        etiquetaVO.setTipoEtiqueta(textTipoEtiqueta.getValue().toString());
        try {
            indicadorBO.eliminarEtiqueta(etiquetaVO);
            cargarEtiquetas();
            info("Etiqueta eliminada con éxito");
        } catch (IndicadoresException ex) {
            Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
            ex.printStackTrace();
            error("Error al eliminar etiqueta");
        }
    }
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    public void botonConsultar() {

        try {
            if (radioEtiqueta.getValue() != null) {
                String tipoEtiqueta = radioEtiqueta.getValue().toString();
                String contenido = new String();

                if (inputNombreEtiqueta.getValue() == null)
                {
                    contenido = "";
                }else{
                    contenido = inputNombreEtiqueta.getValue().toString();
                }

                listaEtiquetas = indicadorBO.consultarEtiquetas(tipoEtiqueta, contenido);
                this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "listaEtiquetas", listaEtiquetas);
                setBoolFrameCrear(true);
            } else {
                cargarEtiquetas();
                this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "listaEtiquetas", listaEtiquetas);
            }
        } catch (IndicadoresException ex) {
            error("Error al consultar en la base de datos");
            Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public TextField getInputNombreEtiqueta() {
        return inputNombreEtiqueta;
    }

    public void setInputNombreEtiqueta(TextField inputNombreEtiqueta) {
        this.inputNombreEtiqueta = inputNombreEtiqueta;
    }

    public HtmlSelectOneRadio getRadioEtiqueta() {
        return radioEtiqueta;
    }

    public void setRadioEtiqueta(HtmlSelectOneRadio radioEtiqueta) {
        this.radioEtiqueta = radioEtiqueta;
    }

    public List<EtiquetaVO> getListaEtiquetas() {
        return listaEtiquetas;
    }

    public void setListaEtiquetas(List<EtiquetaVO> listaEtiquetas) {
        this.listaEtiquetas = listaEtiquetas;
    }

    public StaticText getTextIdEtiqueta() {
        return textIdEtiqueta;
    }

    public void setTextIdEtiqueta(StaticText textIdEtiqueta) {
        this.textIdEtiqueta = textIdEtiqueta;
    }

    public StaticText getTextNombreEtiqueta() {
        return textNombreEtiqueta;
    }

    public void setTextNombreEtiqueta(StaticText textNombreEtiqueta) {
        this.textNombreEtiqueta = textNombreEtiqueta;
    }

    public StaticText getTextPorcentajeEtiqueta() {
        return textPorcentajeEtiqueta;
    }

    public void setTextPorcentajeEtiqueta(StaticText textPorcentajeEtiqueta) {
        this.textPorcentajeEtiqueta = textPorcentajeEtiqueta;
    }

    public StaticText getTextTipoEtiqueta() {
        return textTipoEtiqueta;
    }

    public void setTextTipoEtiqueta(StaticText textTipoEtiqueta) {
        this.textTipoEtiqueta = textTipoEtiqueta;
    }

    public boolean isBoolModifica() {
        return boolModifica;
    }

    public void setBoolModifica(boolean boolModifica) {
        this.boolModifica = boolModifica;
    }

    public HttpSession getSession() {
        return (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(true);
    }

    public void setSession(HttpSession session) {
        this.session = session;
    }

    public TextField getInputPorcentajeEtiqueta() {
        return inputPorcentajeEtiqueta;
    }

    public void setInputPorcentajeEtiqueta(TextField inputPorcentajeEtiqueta) {
        this.inputPorcentajeEtiqueta = inputPorcentajeEtiqueta;
    }

    public TextField getInputNombreEtiquetaModifica() {
        return inputNombreEtiquetaModifica;
    }

    public void setInputNombreEtiquetaModifica(TextField inputNombreEtiquetaModifica) {
        this.inputNombreEtiquetaModifica = inputNombreEtiquetaModifica;
    }

    public TextField getInputPorcentajeEtiquetaModifica() {
        return inputPorcentajeEtiquetaModifica;
    }

    public void setInputPorcentajeEtiquetaModifica(TextField inputPorcentajeEtiquetaModifica) {
        this.inputPorcentajeEtiquetaModifica = inputPorcentajeEtiquetaModifica;
    }

    public HtmlSelectOneRadio getRadioEtiquetaModifica() {
        return radioEtiquetaModifica;
    }

    public void setRadioEtiquetaModifica(HtmlSelectOneRadio radioEtiquetaModifica) {
        this.radioEtiquetaModifica = radioEtiquetaModifica;
    }

    public boolean isBoolAdicionar() {
        return boolAdicionar;
    }

    public void setBoolAdicionar(boolean boolAdicionar) {
        this.boolAdicionar = boolAdicionar;
    }

    public double getPorcentaje() {
        return porcentaje;
    }

    public void setPorcentaje(double porcentaje) {
        this.porcentaje = porcentaje;
    }

    public boolean isBoolbotonCrear() {
        return boolbotonCrear;
    }

    public void setBoolbotonCrear(boolean boolbotonCrear) {
        this.boolbotonCrear = boolbotonCrear;
    }

    public IndicadoresBO getIndicadorBO() {
        return indicadorBO;
    }

    public void setIndicadorBO(IndicadoresBO indicadorBO) {
        this.indicadorBO = indicadorBO;
    }

    public boolean isBoolPorcentaje() {
        return isBoolModifica() || isBoolbotonCrear();
    }

    public void setBoolPorcentaje(boolean boolPorcentaje) {
        this.boolPorcentaje = boolPorcentaje;
    }

    public boolean isBoolFrameCrear() {
        return boolFrameCrear;
    }

    public void setBoolFrameCrear(boolean boolFrameCrear) {
        this.boolFrameCrear = boolFrameCrear;
    }

    /**
     * <p>Callback method that is called whenever a page is navigated to,
     * either directly via a URL, or indirectly via page navigation.
     * Customize this method to acquire resources that will be needed
     * for event handlers and lifecycle methods, whether or not this
     * page is performing post back processing.</p>
     * 
     * <p>Note that, if the current request is a postback, the property
     * values of the components do <strong>not</strong> represent any
     * values submitted with this request.  Instead, they represent the
     * property values that were saved for this view when it was rendered.</p>
     */
    @Override
    public void init() {
        // Perform initializations inherited from our superclass
        super.init();
        // Perform application initialization that must complete
        // *before* managed components are initialized
        // TODO - add your own initialiation code here

        // <editor-fold defaultstate="collapsed" desc="Managed Component Initialization">
        // Initialize automatically managed components
        // *Note* - this logic should NOT be modified
        try {
            _init();
        } catch (Exception e) {
            log("EtiquetasCalidad Initialization Failure", e);
            throw e instanceof FacesException ? (FacesException) e : new FacesException(e);
        }

    // </editor-fold>
    // Perform application initialization that must complete
    // *after* managed components are initialized
    // TODO - add your own initialization code here
    }

    /**
     * <p>Callback method that is called after the component tree has been
     * restored, but before any event processing takes place.  This method
     * will <strong>only</strong> be called on a postback request that
     * is processing a form submit.  Customize this method to allocate
     * resources that will be required in your event handlers.</p>
     */
    @Override
    public void preprocess() {
    }

    /**
     * <p>Callback method that is called just before rendering takes place.
     * This method will <strong>only</strong> be called for the page that
     * will actually be rendered (and not, for example, on a page that
     * handled a postback and then navigated to a different page).  Customize
     * this method to allocate resources that will be required for rendering
     * this page.</p>
     */
    @Override
    public void prerender() {
    }

    /**
     * <p>Callback method that is called after rendering is completed for
     * this request, if <code>init()</code> was called (regardless of whether
     * or not this was the page that was actually rendered).  Customize this
     * method to release resources acquired in the <code>init()</code>,
     * <code>preprocess()</code>, or <code>prerender()</code> methods (or
     * acquired during execution of an event handler).</p>
     */
    @Override
    public void destroy() {
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected ApplicationBean1 getApplicationBean1() {
        return (ApplicationBean1) getBean("ApplicationBean1");
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected SessionBean1 getSessionBean1() {
        return (SessionBean1) getBean("SessionBean1");
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected RequestBean1 getRequestBean1() {
        return (RequestBean1) getBean("RequestBean1");
    }

    public String button3_action() {
        // TODO: Process the action. Return value is a navigation
        // case name where null will return to the same page.
        return "volver";
    }

    /*Se crean el Botón Actualizar en Atención al Error:
     Estado Actual del Sistema de Información - Parte I, Centro de
     Investigación, Instituto Tecnológico Metropolitano ITM,
     ACEVEDO Manuel, DÍAZ César, JIMÉNEZ M Elizabeth, Febrero 15 de 2010,
     Págs. 5 y 6*/
    public String btModificar_action() {
        // TODO: Process the action. Return value is a navigation
        // case name where null will return to the same page.

        inputNombreEtiquetaModifica.setValue(textNombreEtiqueta.getValue().toString());
        radioEtiquetaModifica.setValue(textTipoEtiqueta.getValue().toString());
        inputPorcentajeEtiqueta.setValue(textPorcentajeEtiqueta.getValue().toString());
        setBoolModifica(true);
        setBoolFrameCrear(false);

        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "boolModifica", isBoolModifica());
        porcentaje = 0;
        for (int i = 0; i < listaEtiquetas.size(); i++) {
            if (listaEtiquetas.get(i).getTipoEtiqueta().equals(textTipoEtiqueta.getValue().toString())) {
                porcentaje = porcentaje + listaEtiquetas.get(i).getPorcentaje();
            }
        }

        /*Para que oculte los componentes que no se requieran*/
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "porcentaje", getPorcentaje());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "inputPorcentajeEtiqueta", getInputPorcentajeEtiqueta().getValue().toString());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textIdEtiqueta", getTextIdEtiqueta().getValue().toString());
        this.getSession().setAttribute(ID_SESSION_ETIQUETAS_CALIDAD + "textTipoEtiqueta", getTextTipoEtiqueta().getValue().toString());

        return null;
    }

    /*Se crean el Botón Eliminar en Atención al Error:
     Estado Actual del Sistema de Información - Parte I, Centro de
     Investigación, Instituto Tecnológico Metropolitano ITM,
     ACEVEDO Manuel, DÍAZ César, JIMÉNEZ M Elizabeth, Febrero 15 de 2010,
     Págs. 5 y 6*/
    public String btEliminar_action() {
        // TODO: Process the action. Return value is a navigation
        // case name where null will return to the same page.

        EtiquetaVO etiquetaVO = new EtiquetaVO();
        etiquetaVO.setIdEtiqueta(Long.parseLong(textIdEtiqueta.getValue().toString()));
        etiquetaVO.setTipoEtiqueta(textTipoEtiqueta.getValue().toString());
        try {
            indicadorBO.eliminarEtiqueta(etiquetaVO);
            cargarEtiquetas();
            info("Etiqueta eliminada con éxito");
        } catch (IndicadoresException ex) {
            Logger.getLogger(EtiquetasCalidad.class.getName()).log(Level.SEVERE, null, ex);
            ex.printStackTrace();
            error("Error al eliminar etiqueta");
        }
        
        return null;
    }


}

